package org.dromara.code.domain.vo

import org.dromara.code.domain.CodeProduct
import cn.idev.excel.annotation.ExcelIgnoreUnannotated
import cn.idev.excel.annotation.ExcelProperty
import com.fasterxml.jackson.annotation.JsonIgnore
import org.dromara.common.excel.annotation.ExcelDictFormat
import org.dromara.common.excel.convert.ExcelDictConvert
import org.dromara.common.core.NoArg
import org.dromara.common.core.AllOpen
import io.github.linpeilie.annotations.AutoMapper

import java.io.Serial
import java.io.Serializable

/**
 * 一物一码产品类目视图对象 code_product
 *
 * @author Blutter J
 * @date 2025-08-07
 */
@NoArg
@AllOpen
@ExcelIgnoreUnannotated
@AutoMapper(target = CodeProduct::class)
data class CodeProductVo (

    /**
     * 主键
     */
    @ExcelProperty(value = ["主键"])
    var id: Long? = null,
    /**
     * 产品名称
     */
    @ExcelProperty(value = ["产品名称"])
    var productName: String? = null,
    /**
     * 排序号
     */
    @ExcelProperty(value = ["排序号"])
    var orderNum: Int? = null,
    /**
     * 字段数据JSON
     */
    @ExcelProperty(value = ["字段数据JSON"])
    var dataJson: String? = null,
) : Serializable {
    @Serial
    @JsonIgnore
    val serialVersionUID = 1L
}
